home *** CD-ROM | disk | FTP | other *** search
/ EuroCD 3 / EuroCD 3.iso / Programming / vbcc / Makefile < prev    next >
Makefile  |  1998-06-24  |  7KB  |  180 lines

  1.  
  2. # used to create vbcc, vc and vcpp
  3. CC = vbcc://bin/vc -DAMIGA
  4. LDFLAGS = vbcc:libsrc/stdlib/newmalloc.o -lmieee -lextra
  5.  
  6. # native version; used to create dtgen
  7. NCC = $(CC)
  8. NLDFLAGS = $(LDFLAGS)
  9.  
  10. all: bin/vcpp bin/vc bin/vbcc$(TARGET)
  11.  
  12. vbccs: bin/vbccs$(TARGET)
  13.  
  14. bin/vc: frontend/vc.c
  15.     $(CC) frontend/vc.c -o bin/vc $(LDFLAGS)
  16.  
  17. vcppobjs = vcpp/cpp.o vcpp/eval.o vcpp/getopt.o vcpp/hideset.o vcpp/include.o \
  18.        vcpp/lex.o vcpp/macro.o vcpp/nlist.o vcpp/tokens.o vcpp/unix.o
  19.  
  20. bin/vcpp: $(vcppobjs)
  21.     $(CC) $(LDFLAGS) $(vcppobjs) -o bin/vcpp
  22.  
  23. vcpp/cpp.o: vcpp/cpp.c vcpp/cpp.h
  24.     $(CC) -c -Ivcpp vcpp/cpp.c -o vcpp/cpp.o
  25.  
  26. vcpp/eval.o: vcpp/eval.c vcpp/cpp.h
  27.     $(CC) -c -Ivcpp vcpp/eval.c -o vcpp/eval.o
  28.  
  29. vcpp/getopt.o: vcpp/getopt.c
  30.     $(CC) -c -Ivcpp vcpp/getopt.c -o vcpp/getopt.o
  31.  
  32. vcpp/hideset.o: vcpp/hideset.c vcpp/cpp.h
  33.     $(CC) -c -Ivcpp vcpp/hideset.c -o vcpp/hideset.o
  34.  
  35. vcpp/include.o: vcpp/include.c vcpp/cpp.h
  36.     $(CC) -c -Ivcpp vcpp/include.c -o vcpp/include.o
  37.  
  38. vcpp/lex.o: vcpp/lex.c vcpp/cpp.h
  39.     $(CC) -c -Ivcpp vcpp/lex.c -o vcpp/lex.o
  40.  
  41. vcpp/macro.o: vcpp/macro.c vcpp/cpp.h
  42.     $(CC) -c -Ivcpp vcpp/macro.c -o vcpp/macro.o
  43.  
  44. vcpp/nlist.o: vcpp/nlist.c vcpp/cpp.h
  45.     $(CC) -c -Ivcpp vcpp/nlist.c -o vcpp/nlist.o
  46.  
  47. vcpp/tokens.o: vcpp/tokens.c vcpp/cpp.h
  48.     $(CC) -c -Ivcpp vcpp/tokens.c -o vcpp/tokens.o
  49.  
  50. vcpp/unix.o: vcpp/unix.c vcpp/cpp.h
  51.     $(CC) -c -Ivcpp vcpp/unix.c -o vcpp/unix.o
  52.  
  53. TRGDIR = machines/$(TARGET)
  54.  
  55. bobjects = $(TRGDIR)/main.o $(TRGDIR)/vars.o $(TRGDIR)/declaration.o \
  56.        $(TRGDIR)/parse_expr.o $(TRGDIR)/type_expr.o $(TRGDIR)/ic.o \
  57.        $(TRGDIR)/machine.o $(TRGDIR)/statements.o $(TRGDIR)/preproc.o \
  58.        $(TRGDIR)/supp.o $(TRGDIR)/dt.o
  59.  
  60. fobjects = $(TRGDIR)/opt.o $(TRGDIR)/av.o $(TRGDIR)/rd.o $(TRGDIR)/regs.o \
  61.        $(TRGDIR)/flow.o $(TRGDIR)/cse.o $(TRGDIR)/cp.o $(TRGDIR)/loop.o \
  62.        $(TRGDIR)/alias.o $(bobjects)
  63.  
  64. sobjects = $(TRGDIR)/opts.o $(TRGDIR)/regss.o $(bobjects)
  65.  
  66. tasm     = $(TRGDIR)/supp.o $(TRGDIR)/tasm.o $(TRGDIR)/dt.o \
  67.        $(TRGDIR)/opt.o $(TRGDIR)/av.o $(TRGDIR)/rd.o $(TRGDIR)/regs.o \
  68.        $(TRGDIR)/flow.o $(TRGDIR)/cse.o $(TRGDIR)/cp.o $(TRGDIR)/loop.o \
  69.        $(TRGDIR)/alias.o $(TRGDIR)/machine.o
  70.  
  71. mbasic     = $(TRGDIR)/supp.o $(TRGDIR)/mbasic.o $(TRGDIR)/dt.o \
  72.        $(TRGDIR)/opt.o $(TRGDIR)/av.o $(TRGDIR)/rd.o $(TRGDIR)/regs.o \
  73.        $(TRGDIR)/flow.o $(TRGDIR)/cse.o $(TRGDIR)/cp.o $(TRGDIR)/loop.o \
  74.        $(TRGDIR)/alias.o $(TRGDIR)/machine.o
  75.  
  76. vscobjects = $(TRGDIR)/vsc.o $(TRGDIR)/schedule.o
  77.  
  78. bin/vbcc$(TARGET): $(fobjects)
  79.     $(CC) $(LDFLAGS) $(fobjects) -o bin/vbcc$(TARGET)
  80.  
  81. bin/vbccs$(TARGET): $(sobjects)
  82.     $(CC) $(LDFLAGS) $(sobjects) -o bin/vbccs$(TARGET)
  83.  
  84. bin/vsc$(TARGET): $(vscobjects)
  85.     $(CC) $(LDFLAGS) $(vscobjects) -o bin/vsc$(TARGET)
  86.  
  87. bin/tasm$(TARGET): $(tasm)
  88.     $(CC) $(LDFLAGS) $(tasm) -o bin/tasm$(TARGET)
  89.  
  90. bin/mbasic$(TARGET): $(mbasic)
  91.     $(CC) $(LDFLAGS) $(mbasic) -o bin/mbasic$(TARGET)
  92.  
  93. bin/dtgen: datatypes/dtgen.c datatypes/datatypes.h datatypes/dtconv.h
  94.     $(NCC) datatypes/dtgen.c -o bin/dtgen -Idatatypes $(NLDFLAGS)
  95.  
  96. $(TRGDIR)/dt.h: bin/dtgen $(TRGDIR)/machine.dt
  97.     bin/dtgen $(TRGDIR)/machine.dt $(TRGDIR)/dt.h $(TRGDIR)/dt.c
  98.  
  99. $(TRGDIR)/dt.c: bin/dtgen $(TRGDIR)/machine.dt
  100.     bin/dtgen $(TRGDIR)/machine.dt $(TRGDIR)/dt.h $(TRGDIR)/dt.c
  101.  
  102. $(TRGDIR)/dt.o: $(TRGDIR)/dt.h $(TRGDIR)/dt.c
  103.     $(CC) -c $(TRGDIR)/dt.c -o $(TRGDIR)/dt.o -I$(TRGDIR) -Idatatypes
  104.  
  105. $(TRGDIR)/tasm.o: tasm.c supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  106.     $(CC) -c tasm.c -o $(TRGDIR)/tasm.o -I$(TRGDIR)
  107.  
  108. $(TRGDIR)/mbasic.o: mbasic.c supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  109.     $(CC) -c mbasic.c -o $(TRGDIR)/mbasic.o -I$(TRGDIR)
  110.  
  111. $(TRGDIR)/supp.o: supp.c supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  112.     $(CC) -c supp.c -o $(TRGDIR)/supp.o -I$(TRGDIR)
  113.  
  114. $(TRGDIR)/main.o: main.c vbc.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  115.     $(CC) -c main.c -o $(TRGDIR)/main.o -I$(TRGDIR)
  116.  
  117. $(TRGDIR)/vars.o: vars.c vbc.h supp.h $(TRGDIR)/machine.h errors.h $(TRGDIR)/dt.h
  118.     $(CC) -c vars.c -o $(TRGDIR)/vars.o -I$(TRGDIR)
  119.  
  120. $(TRGDIR)/declaration.o: declaration.c vbc.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  121.     $(CC) -c declaration.c -o $(TRGDIR)/declaration.o -I$(TRGDIR)
  122.  
  123. $(TRGDIR)/parse_expr.o: parse_expr.c vbc.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  124.     $(CC) -c parse_expr.c -o $(TRGDIR)/parse_expr.o -I$(TRGDIR)
  125.  
  126. $(TRGDIR)/type_expr.o: type_expr.c vbc.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  127.     $(CC) -c type_expr.c -o $(TRGDIR)/type_expr.o -I$(TRGDIR)
  128.  
  129. $(TRGDIR)/ic.o: ic.c vbc.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  130.     $(CC) -c ic.c -o $(TRGDIR)/ic.o -I$(TRGDIR)
  131.  
  132. $(TRGDIR)/statements.o: statements.c vbc.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  133.     $(CC) -c statements.c -o $(TRGDIR)/statements.o -I$(TRGDIR)
  134.  
  135. $(TRGDIR)/opt.o: opt.c opt.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  136.     $(CC) -c opt.c -o $(TRGDIR)/opt.o -I$(TRGDIR)
  137.  
  138. $(TRGDIR)/av.o: av.c opt.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  139.     $(CC) -c av.c -o $(TRGDIR)/av.o -I$(TRGDIR)
  140.  
  141. $(TRGDIR)/rd.o: rd.c opt.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  142.     $(CC) -c rd.c -o $(TRGDIR)/rd.o -I$(TRGDIR)
  143.  
  144. $(TRGDIR)/regs.o: regs.c opt.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  145.     $(CC) -c regs.c -o $(TRGDIR)/regs.o -I$(TRGDIR)
  146.  
  147. $(TRGDIR)/flow.o: flow.c opt.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  148.     $(CC) -c flow.c -o $(TRGDIR)/flow.o -I$(TRGDIR)
  149.  
  150. $(TRGDIR)/cse.o: cse.c opt.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  151.     $(CC) -c cse.c -o $(TRGDIR)/cse.o -I$(TRGDIR)
  152.  
  153. $(TRGDIR)/cp.o: cp.c opt.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  154.     $(CC) -c cp.c -o $(TRGDIR)/cp.o -I$(TRGDIR)
  155.  
  156. $(TRGDIR)/loop.o: loop.c opt.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  157.     $(CC) -c loop.c -o $(TRGDIR)/loop.o -I$(TRGDIR)
  158.  
  159. $(TRGDIR)/alias.o: alias.c opt.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  160.     $(CC) -c alias.c -o $(TRGDIR)/alias.o -I$(TRGDIR)
  161.  
  162. $(TRGDIR)/preproc.o: preproc.c vbpp.h supp.h vbc.h $(TRGDIR)/dt.h
  163.     $(CC) -c preproc.c -o $(TRGDIR)/preproc.o -I$(TRGDIR)
  164.  
  165. $(TRGDIR)/machine.o: $(TRGDIR)/machine.c supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  166.     $(CC) -c $(TRGDIR)/machine.c -o $(TRGDIR)/machine.o -I$(TRGDIR) -I.
  167.  
  168. $(TRGDIR)/opts.o: opt.c opt.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  169.     $(CC) -c -DNO_OPTIMIZER opt.c -o $(TRGDIR)/opts.o -I$(TRGDIR)
  170.  
  171. $(TRGDIR)/regss.o: regs.c opt.h supp.h $(TRGDIR)/machine.h $(TRGDIR)/dt.h
  172.     $(CC) -c -DNO_OPTIMIZER regs.c -o $(TRGDIR)/regss.o -I$(TRGDIR)
  173.  
  174. $(TRGDIR)/vsc.o: vsc/vsc.h vsc/vsc.c $(TRGDIR)/schedule.h
  175.     $(CC) -c vsc/vsc.c -o $(TRGDIR)/vsc.o -I$(TRGDIR)
  176.  
  177. $(TRGDIR)/schedule.o: vsc/vsc.h $(TRGDIR)/schedule.h $(TRGDIR)/schedule.c
  178.     $(CC) -c $(TRGDIR)/schedule.c -o $(TRGDIR)/schedule.o -I$(TRGDIR) -Ivsc
  179.  
  180.